02.02 - Estructuras de datos
"# Lenguajes Estructurados
¿Qué son las estructuras de datos?
Una estructura de datos es una colección de datos relacionados que se almacenan de manera organizada en la memoria de una computadora.
¿Por qué son útiles las estructuras de datos?
Las estructuras de datos nos permiten almacenar información relacionada de manera organizada.
¿Cómo se declaran las estructuras de datos?
Para declarar una estructura, utilizamos la palabra reservada struct
seguida del nombre de la estructura y los campos que contiene.
struct Libro {
char titulo[50];
char autor[50];
int num_paginas;
};
¿Cómo se inicializan las estructuras de datos?
Para inicializar una estructura, utilizamos la sintaxis de llaves.
struct Libro libro1 = {"El principito", "Antoine de Saint-Exupéry", 96};
¿Cómo se accede a los campos de una estructura?
Para acceder a los campos de una estructura, utilizamos el operador de punto ".".
printf("Título: %s\n", libro1.titulo);
¿Cómo se modifica el valor de un campo de una estructura?
Para modificar el valor de un campo de una estructura, utilizamos el operador de punto "."
libro1.num_paginas = 110;
¿Cómo se declaran punteros a estructuras?
Para declarar un puntero a una estructura, utilizamos el operador de indirección "*".
struct Libro *libro2 = &libro1;
¿Cómo se accede a los campos de una estructura a través de un puntero?
Para acceder a los campos de una estructura a través de un puntero, utilizamos el operador de flecha "->".
printf("Título: %s\n", libro2->titulo);
¿Cómo se modifica el valor de un campo de una estructura a través de un puntero?
Para modificar el valor de un campo de una estructura a través de un puntero, utilizamos el operador de flecha "->".
libro2->num_paginas = 110;
Supongamos que queremos almacenar información sobre los libros de una biblioteca, como el título, el autor y el número de páginas. Podemos utilizar una estructura para almacenar esta información de manera organizada.
Primero, definimos la estructura. En este caso, la estructura se llama "Libro" y contiene tres campos: "titulo", "autor" y "num_paginas".
struct Libro {
char titulo[50];
char autor[50];
int num_paginas;
};
Luego, podemos utilizar la estructura para crear una variable que contenga la información de un libro. Podemos inicializar la variable utilizando la sintaxis de llaves.
struct Libro libro1 = {"El principito", "Antoine de Saint-Exupéry", 96};
Podemos acceder a los campos de la estructura utilizando el operador de punto ".". Por ejemplo, para imprimir el título del libro, podemos hacer lo siguiente:
printf("Título: %s\n", libro1.titulo);
También podemos modificar los campos de la estructura utilizando el operador de punto. Por ejemplo, para cambiar el número de páginas del libro, podemos hacer lo siguiente:
libro1.num_paginas = 110;
Podemos utilizar la estructura en funciones. Por ejemplo, podemos crear una función para imprimir la información de un libro:
void imprimir_libro(struct Libro l) {
printf("Título: %s\n", l.titulo);
printf("Autor: %s\n", l.autor);
printf("Número de páginas: %d\n", l.num_paginas);
}
Podemos llamar a esta función y pasarle la variable que contiene la información del libro:
imprimir_libro(libro1);
En resumen, las estructuras nos permiten organizar información de manera más clara y legible. Podemos utilizarlas para crear variables que contengan información relacionada y acceder a los campos de la estructura utilizando el operador de punto. También podemos utilizar estructuras en funciones para procesar y manipular la información almacenada en ellas.
Ejercicio
Escribir un programa que permita ingresar la información de un libro y luego la imprima.